package servlets;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import beans.ListaTutorBean;
import beans.PersonaBean;

import dao.interfaces.PersonaDao;
import dao.interfaces.TutorDao;
import dao.interfaces.UtilDao;
import daofactory.DaoFactory;

/**
 * Servlet implementation class BuscarUsuario
 */
@WebServlet("/BuscarUsuario")
public class BuscarUsuario extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public BuscarUsuario() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		PrintWriter out = response.getWriter();
		
		ArrayList<String> nombre ;
		ArrayList<String> apePat;
		ArrayList<String> patMat;
		
		try {
			
			nombre=new ArrayList<>();
			apePat=new ArrayList<>();
			patMat=new ArrayList<>();
			
			System.out.println("entra");
			String dato=request.getParameter("txtEstado");
			//empieza la busqueda de la persona
			DaoFactory dao1 = DaoFactory.getDAOFactory(DaoFactory.MYSQL);
			PersonaDao usuario1 = dao1.getPersonaDao();
			ArrayList<PersonaBean> usuario = usuario1.buscarPersona(dato); 
			
			
			//busqueda de secretaria 
			
			//busqueda de administrador
			
			//busqueda de coordinador
			
			//busqueda de apuderado
			
			if(dato.equalsIgnoreCase("APODERADO")){
			if(usuario!=null){
				for(int i=0;i<usuario.size();i++){

					
					nombre.add(usuario.get(i).getNombres());
					apePat.add(usuario.get(i).getApePaterno());
					patMat.add(usuario.get(i).getApeMaterno());
					
					
					
				}
				request.setAttribute("DATO", dato);
				request.setAttribute("nombre", nombre);
				request.setAttribute("apePat", apePat);
				request.setAttribute("apeMat", patMat);
							
				
				System.out.println("ENVIO PARAMETRO");

				RequestDispatcher rd = getServletContext().getRequestDispatcher("/MantenerUsuario.jsp");
				rd.forward(request, response);
			   
			}
				
			}else if(dato.equalsIgnoreCase("EMPLEADO")){
				if(usuario!=null){
					for(int i=0;i<usuario.size();i++){

						
						nombre.add(usuario.get(i).getNombres());
						apePat.add(usuario.get(i).getApePaterno());
						patMat.add(usuario.get(i).getApeMaterno());
						
						
						
					}
					request.setAttribute("DATO", dato);
					request.setAttribute("nombre", nombre);
					request.setAttribute("apePat", apePat);
					request.setAttribute("apeMat", patMat);
								
					
					System.out.println("ENVIO PARAMETRO");

					RequestDispatcher rd = getServletContext().getRequestDispatcher("/MantenerUsuario.jsp");
					rd.forward(request, response);
				}
			}else{
			System.out.println("INGRESA NULL");
			request.setAttribute("DATO", dato);
			getServletContext().getRequestDispatcher("/MantenerUsuario.jsp")
												.forward(request, response);
		}
			
		} catch (Exception e) {
			// TODO: handle exception
			System.err.println(e);
		}
	}

}
